# Maintainer: Antonio Rojas <arojas@archlinux.org>

pkgbase=pyqt6
pkgname=python-pyqt6
pkgdesc='A set of Python bindings for the Qt6 toolkit'
pkgver=6.5.0
pkgrel=2
arch=(x86_64)
url='https://riverbankcomputing.com/software/pyqt/intro'
license=(GPL)
groups=(pyqt6)
depends=(qt6-base python-pyqt6-sip)
optdepends=('qt6-tools: QtHelp, QtDesigner bindings'
            'qt6-svg: QtSvg bindings'
            'qt6-declarative: QtQml bindings, qmlplugin'
            'qt6-quick3d: QtQuick3D bindings'
            'qt6-connectivity: QtBluetooth, QtNfc bindings'
            'qt6-multimedia: QtMultimedia, QtSpatialAudio bindings'
            'qt6-positioning: QtPositioning bindings'
            'qt6-remoteobjects: QtRemoteObjects bindings'
            'qt6-sensors: QtSensors bindings'
            'qt6-serialport: QtSerialPort bindings'
            'qt6-speech: QtTextToSpeech bindings'
            'qt6-webchannel: QtWebChannel bindings'
            'qt6-webengine: QtPdf bindings'
            'qt6-websockets: QtWebSockets bindings'
            'dbus-python: for python-dbus mainloop support')
makedepends=(sip pyqt-builder python-opengl dbus-python
             qt6-tools qt6-svg qt6-declarative qt6-quick3d qt6-shadertools qt6-multimedia qt6-remoteobjects
             qt6-positioning qt6-sensors qt6-serialport qt6-webchannel qt6-websockets qt6-connectivity qt6-speech qt6-webengine)
source=(https://pypi.python.org/packages/source/P/PyQt6/PyQt6-$pkgver.tar.gz)
sha256sums=('b97cb4be9b2c8997904ea668cf3b0a4ae5822196f7792590d05ecde6216a9fbc')

build() {
  cd PyQt6-$pkgver
  sip-build \
    --confirm-license \
    --no-make \
    --qmake=/usr/bin/qmake6 \
    --api-dir /usr/share/qt6/qsci/api/python \
    --pep484-pyi
  cd build
  make
}

package_python-pyqt6(){
  cd PyQt6-$pkgver/build
  make INSTALL_ROOT="$pkgdir" install

  # compile Python bytecode
  python -m compileall -d / "$pkgdir"/usr/lib
  python -O -m compileall -d / "$pkgdir"/usr/lib
}
